Avoid unconditional PATH_MAX usage
authorPino Toscano <toscano.pino@tiscali.it>
Wed, 28 Oct 2020 18:53:04 +0000 (18:53 +0000)
committerDmitry Shachnev <mitya57@debian.org>
Wed, 28 Oct 2020 18:53:04 +0000 (18:53 +0000)
Forwarded: no
Last-Update: 2020-04-19

Use a "safe" size in case PATH_MAX is not defined; in the end, this should not
be used, as a allocating realpath() will be used instead.

Gbp-Pq: Name path_max.diff

src/corelib/io/qfilesystemengine_unix.cpp

index ef2ee1dd5ea59c7cb2bd342f383eaa727984fa8c..5a68db070cab3dce2a4b444aade9fb4adae4fa8e 100644 (file)
@@ -689,7 +689,11 @@ QFileSystemEntry QFileSystemEngine::canonicalName(const QFileSystemEntry &entry,
     Q_UNUSED(data);
     return QFileSystemEntry(slowCanonicalized(absoluteName(entry).filePath()));
 #else
+#ifdef PATH_MAX
     char stack_result[PATH_MAX+1];
+#else
+    char stack_result[4096+1];
+#endif
     char *resolved_name = nullptr;
 # if defined(Q_OS_DARWIN) || defined(Q_OS_ANDROID)
     // On some Android and macOS versions, realpath() will return a path even if